package message

const (
	LoginMesType      = "LoginMes"
	LoginReMesType    = "LoginReMesType"
	RegisterMesType   = "RegisterMesType"
	RegisterResType   = "RegisterResType"   // 用户注册类型功能
	NotifyUserMesType = "NotifyUserMesType" // 服务器推送用户信息
	SmsMesType = "SmsMesType"  // 短消息类型
)

// 定义几个用户状态的状态常亮
const(
	UserOnline = iota
	UserOffline
	UserBusyStatus
)

type Message struct {
	Type string `json:"type"` // 消息的类型
	Data string `json:"data"` // 消息的类型
}

// 登录的消息体
type LoginMes struct {
	UserId   int    `json:"userId"`   // 用户Id
	UserPwd  string `json:"userPwd"`  // 用户的密码
	UserName string `json:"userName"` // 用户名
}

// 响应的消息体
type LoginReMsg struct {
	Code    int `json:"code"`     //  返回状态吗 500 为之策 200 登录成功
	UsersId []int                 // 保存用户id的切片
	Error   string `json:"error"` // 返回错误信息
}

// 注册的消息体
type RegisterMes struct {
	User User `json:"user"` // 注册传入一个用户的结构体
}

//
type RegisterResMsg struct {
	Code  int    `json:"code"`  //  返回状态吗 400 该用户已经占用 200 注册成功
	Error string `json:"error"` // 返回错误信息
}

// 为了配合服务器端 推送用户状态变化的消息
type NotifyUserStatusMes struct {
	UserId     int `json:"userId"`     // 用户id
	UserStatus int `json:"userStatus"` // 用户状态
}

// 新增加一个SmsMes
type SmsMes struct {
	User  // 谁发的
	Content string `json:"content"`
}

// smsReMes  // 发送 短消息反馈
